home *** CD-ROM | disk | FTP | other *** search
- Path: uunet!zephyr.ens.tek.com!tekgen!tekred!saab!billr
- From: billr@saab.CNA.TEK.COM (Bill Randle)
- Newsgroups: comp.sources.games
- Subject: v08i006: NetHack3 - display oriented dungeons & dragons (Ver. 3.0), Patch2a
- Message-ID: <4458@tekred.CNA.TEK.COM>
- Date: 18 Aug 89 15:45:37 GMT
- Sender: nobody@tekred.CNA.TEK.COM
- Lines: 1654
- Approved: billr@saab.CNA.TEK.COM
-
- Submitted-by: Izchak Miller <izchak@linc.cis.upenn.edu>
- Posting-number: Volume 8, Issue 6
- Archive-name: NetHack3/Patch2a
- Patch-To: NetHack3: Volume 7, Issue 56-93
-
- [Here's the second set of official patches to NetHack3
- (in 7 parts). See the file UPDATE2 for the list of changes
- that have been made. Unpack this and all the other parts
- in your top level NetHack directory and execute the
- 'do_patch2.sh' shell script (if you're on Unix) to auto-
- matically apply the patches using 'patch'. If Patch2b
- unpacked with two control characters missing they are
- control-G's at the end of the two "echo " statements in
- Makefile.tcc. -br]
-
- #! /bin/sh
- # This is a shell archive. Remove anything before this line, then unpack
- # it by saving it into a file and typing "sh file". To overwrite existing
- # files, type "sh file -c". You can also feed this as standard input via
- # unshar, or by typing "sh <file", e.g.. If this archive is complete, you
- # will see the following message at the end:
- # "End of archive 1 (of 7)."
- # Contents: UPDATE2 do_patch2.sh patch02a
- # Wrapped by billr@saab on Fri Aug 18 08:32:41 1989
- PATH=/bin:/usr/bin:/usr/ucb ; export PATH
- if test -f 'UPDATE2' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'UPDATE2'\"
- else
- echo shar: Extracting \"'UPDATE2'\" \(2893 characters\)
- sed "s/^X//" >'UPDATE2' <<'END_OF_FILE'
- X--------------
- XUPDATE2
- X--------------
- XThis patch kit upgrades NetHack to version 3.0f. The kit should
- Xbe applied to the original release, patched with patchlevel 1.
- X
- XMany of the diffs included here are bugfixes to bugs reported to
- Xus by players. We are very grateful for these reports.
- X
- XThere were questions about our netnews usage. We use the good
- Xoffices of comp.sources.games because, unlike rec.games.hack, it
- Xis archived. It is the only way to secure the availability of
- Xthe source code and the official patches for future users. For
- Xthis reason, comp.sources.games will remain the only place where
- Xthe official NetHack patches are posted.
- X
- XOccasionally we may see a need to post a semi-official stopgap patch
- Xsuch as the one for the 'killer' bug posted just after Patch 1 in
- Xrec.games.hack and in comp.sources.games.bugs. These stopgap patches
- Xwill always be included in the next official patch kit. The 'killer'
- Xbugfix is, indeed, included here.
- X
- XThe above two newsgroups often contain many bug reports and unofficial
- Xfixes. We read these groups, and thus we get the reports. But it
- Xwill be helpful if you mailed nethack-bugs a copy of your posting.
- XIf your site gets these newsgroups, you may want to check them for
- Xmentions of bugs before reporting the same bug to nethack-bugs (or
- Xto the same newsgroups, for that matter -- unless you have additional
- Xinformation).
- X
- X
- X
- XNow, on to the main changes.
- X
- XObjects were rearranged slightly, so the cautious may want to throw
- Xout saved games and bones files.
- X
- XTimo Hakulinen provided an OS/2 port.
- X
- XVarious people convinced various OS versions to be better about
- Xsensing the available screen size at start-up.
- X
- XThe game tries now to be smarter about guessing defaults for players
- Xwho don't set environment variables of interest to NetHack.
- X
- XEric Raymond extended the PC color code slightly to allow its use by
- XSVR3.2 machines with color information from terminfo, and also allowed
- Xmany extended commands to be available via a meta key under SYSV.
- X
- XPaul Gyugyi provided a better makefile for MicroSoft C.
- X
- XThe MSDOS terminal problems, including always needing TERMLIB, are
- X(hopefully) fixed.
- X
- XThe '/' command now allows multiple identifications, and more things
- Xmay be usefully identified.
- X
- XMore code was shuffled and rewritten to satisfy compiler and preprocessor
- Xconstraints.
- X
- XStarving dogs again eat people food.
- X
- XCredit cards can no longer lock things.
- X
- XDoors have been toned down slightly, but are in no danger of being removed.
- X
- XThe gods' ranking of player troubles was revised.
- X
- XWizards can no longer start with certain useless items.
- X
- XVarious code, including game ending, seduction, and monster attack, is
- Xconsiderably cleaner.
- X
- XAbove all: scores of bugs were fixed.
- X
- X
- XPlease continue testing the game and reporting to nethack-bugs. Your
- Xresponse has been wonderful, and it has made this effort worth while.
- X
- X
- END_OF_FILE
- if test 2893 -ne `wc -c <'UPDATE2'`; then
- echo shar: \"'UPDATE2'\" unpacked with wrong size!
- fi
- # end of 'UPDATE2'
- fi
- if test -f 'do_patch2.sh' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'do_patch2.sh'\"
- else
- echo shar: Extracting \"'do_patch2.sh'\" \(496 characters\)
- sed "s/^X//" >'do_patch2.sh' <<'END_OF_FILE'
- X#! /bin/sh
- X# script to call patch to apply diff files
- X# make sure all of the patch files (and this file) are in your top level
- X# NetHack directory
- X#
- Xecho "applying patch2a"
- Xpatch -p <patch02a
- Xecho "applying patch2b"
- Xpatch -p <patch02b
- Xecho "applying patch2c"
- Xpatch -p <patch02c
- Xecho "applying patch2d"
- Xpatch -p <patch02d
- Xecho "applying patch2e"
- Xpatch -p <patch02e
- Xecho "applying patch2f"
- Xpatch -p <patch02f
- Xecho "applying patch2g"
- Xpatch -p <patch02g
- Xecho "all patches applied, check for rejects"
- END_OF_FILE
- if test 496 -ne `wc -c <'do_patch2.sh'`; then
- echo shar: \"'do_patch2.sh'\" unpacked with wrong size!
- fi
- chmod +x 'do_patch2.sh'
- # end of 'do_patch2.sh'
- fi
- if test -f 'patch02a' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'patch02a'\"
- else
- echo shar: Extracting \"'patch02a'\" \(47487 characters\)
- sed "s/^X//" >'patch02a' <<'END_OF_FILE'
- X*** include/Old/patchlevel.h Wed Aug 16 14:09:33 1989
- X--- include/patchlevel.h Wed Aug 16 14:03:09 1989
- X***************
- X*** 9,12 ****
- X * add more instructions for new environments and things commonly done wrong
- X */
- X
- X! #define PATCHLEVEL 1
- X--- 9,23 ----
- X * add more instructions for new environments and things commonly done wrong
- X */
- X
- X! /*
- X! * Patch 2, August 16, 1989
- X! * add support for OS/2 (courtesy Timo Hakulinen)
- X! * add a better makefile for MicroSoft C (courtesy Paul Gyugyi)
- X! * more accomodation of compilers and preprocessors
- X! * add better screen-size sensing
- X! * expand color use for PCs and introduce it for SVR3 UNIX machines
- X! * extend '/' to multiple identifications
- X! * fix various minor bugs, and do further code cleaning
- X! */
- X!
- X! #define PATCHLEVEL 2
- X*** ./Old/Files Wed Aug 16 11:58:20 1989
- X--- ./Files Wed Aug 16 10:25:13 1989
- X***************
- X*** 27,34 ****
- X
- X others:
- X (files for MSDOS version)
- X! Make.ini Makefile.pc Makefile.tcc Maketcc.ini NetHack.cnf
- X! termcap termcap.uu
- X (files for MSDOS, Amiga, and Atari versions)
- X pcmain.c pctty.c pcunix.c
- X (file for MSDOS and new Atari versions)
- X--- 27,34 ----
- X
- X others:
- X (files for MSDOS version)
- X! Make.ini Makefile.msc Makefile.os2 Makefile.tcc Maketcc.ini
- X! NetHack.cnf termcap termcap.uu
- X (files for MSDOS, Amiga, and Atari versions)
- X pcmain.c pctty.c pcunix.c
- X (file for MSDOS and new Atari versions)
- X***************
- X*** 44,57 ****
- X include:
- X (files for all versions)
- X amiconf.h artifact.h attrib.h config.h coord.h
- X! decl.h edog.h epri.h eshk.h extern.h
- X! flag.h func_tab.h global.h gold.h hack.h
- X! lev.h mfndpos.h mkroom.h monattk.h mondata.h
- X! monflag.h monst.h monsym.h msdos.h obj.h
- X! objclass.h patchlevel.h pcconf.h permonst.h prop.h
- X! rm.h sp_lev.h spell.h system.h tosconf.h
- X! tradstdc.h trap.h trapname.h unixconf.h vault.h
- X! wseg.h you.h youprop.h
- X (file for special level compiler (STRONGHOLD option))
- X lev_comp.h
- X
- X--- 44,57 ----
- X include:
- X (files for all versions)
- X amiconf.h artifact.h attrib.h config.h coord.h
- X! decl.h def_os2.h edog.h epri.h eshk.h
- X! extern.h flag.h func_tab.h global.h gold.h
- X! hack.h lev.h mfndpos.h mkroom.h monattk.h
- X! mondata.h monflag.h monst.h monsym.h msdos.h
- X! obj.h objclass.h patchlevel.h pcconf.h permonst.h
- X! prop.h rm.h sp_lev.h spell.h system.h
- X! tosconf.h tradstdc.h trap.h trapname.h unixconf.h
- X! vault.h wseg.h you.h youprop.h
- X (file for special level compiler (STRONGHOLD option))
- X lev_comp.h
- X
- X*** ./Old/Makefile.top Wed Aug 16 11:58:50 1989
- X--- ./Makefile.top Wed Aug 16 11:45:21 1989
- X***************
- X*** 55,61 ****
- X # (don't yank the old version out from under people who're playing it)
- X mv $(GAMEDIR)/$(GAME) $(GAMEDIR)/$(GAME).old
- X cp src/$(GAME) $(GAMEDIR)
- X! cp auxil/$(GAME).sh $(SHELLDIR)/$(GAME)
- X # correct the permissions on the new versions
- X -( cd $(GAMEDIR) ; chown $(GAMEUID) $(AUX) $(GAME) ; \
- X chgrp $(GAMEGRP) $(AUX) $(GAME) ; \
- X--- 55,63 ----
- X # (don't yank the old version out from under people who're playing it)
- X mv $(GAMEDIR)/$(GAME) $(GAMEDIR)/$(GAME).old
- X cp src/$(GAME) $(GAMEDIR)
- X! sed -e 's;/usr/games/lib/nethackdir;$(GAMEDIR);' \
- X! < auxil/nethack.sh \
- X! > $(SHELLDIR)/$(GAME)
- X # correct the permissions on the new versions
- X -( cd $(GAMEDIR) ; chown $(GAMEUID) $(AUX) $(GAME) ; \
- X chgrp $(GAMEGRP) $(AUX) $(GAME) ; \
- X***************
- X*** 79,85 ****
- X # copy over the game files
- X ( cd auxil ; cp $(AUX) $(GAMEDIR) )
- X cp src/$(GAME) $(GAMEDIR)
- X! cp auxil/$(GAME).sh $(SHELLDIR)/$(GAME)
- X # set up the permissions
- X -chown $(GAMEUID) $(SHELLDIR)/$(GAME) $(GAMEDIR) $(GAMEDIR)/*
- X chgrp $(GAMEGRP) $(SHELLDIR)/$(GAME) $(GAMEDIR) $(GAMEDIR)/*
- X--- 81,89 ----
- X # copy over the game files
- X ( cd auxil ; cp $(AUX) $(GAMEDIR) )
- X cp src/$(GAME) $(GAMEDIR)
- X! sed -e 's;/usr/games/lib/nethackdir;$(GAMEDIR);' \
- X! < auxil/nethack.sh \
- X! > $(SHELLDIR)/$(GAME)
- X # set up the permissions
- X -chown $(GAMEUID) $(SHELLDIR)/$(GAME) $(GAMEDIR) $(GAMEDIR)/*
- X chgrp $(GAMEGRP) $(SHELLDIR)/$(GAME) $(GAMEDIR) $(GAMEDIR)/*
- X***************
- X*** 91,98 ****
- X -$(GAMEMANCREATE) $(MANDIR)/$(GAME).$(MANEXT)
- X -$(LEVMANCREATE) $(MANDIR)/lev_comp.$(MANEXT)
- X
- X clean:
- X! ( cd src ; make clean)
- X
- X spotless:
- X! ( cd src ; make spotless)
- X--- 95,107 ----
- X -$(GAMEMANCREATE) $(MANDIR)/$(GAME).$(MANEXT)
- X -$(LEVMANCREATE) $(MANDIR)/lev_comp.$(MANEXT)
- X
- X+ # 'make clean' removes all the .o files, but leaves around all the executables
- X+ # and compiled data files
- X clean:
- X! ( cd src ; make clean )
- X
- X+ # 'make spotless' returns the source tree to near-distribution condition.
- X+ # it removes .o files, executables, and compiled data files
- X spotless:
- X! ( cd src ; make spotless )
- X! ( cd auxil ; make spotless )
- X*** amiga/Old/amitcap.c Wed Aug 16 12:00:51 1989
- X--- amiga/amitcap.c Fri Aug 11 17:06:35 1989
- X***************
- X*** 16,22 ****
- X static char MR[] = "\2337m"; /* Reverse on CSI 7 m */
- X static char ME[] = "\2330m"; /* Reverse off CSI 0 m */
- X
- X! #ifdef MSDOSCOLOR /* creps@silver.bacs.indiana.edu */
- X static char SO[] = "\23333m"; /* Standout: Color #3 (orange) */
- X static char SE[] = "\2330m";
- X #else
- X--- 16,22 ----
- X static char MR[] = "\2337m"; /* Reverse on CSI 7 m */
- X static char ME[] = "\2330m"; /* Reverse off CSI 0 m */
- X
- X! #ifdef TEXTCOLOR
- X static char SO[] = "\23333m"; /* Standout: Color #3 (orange) */
- X static char SE[] = "\2330m";
- X #else
- X***************
- X*** 24,33 ****
- X--- 24,42 ----
- X static char SE[] = "\2330m";
- X #endif
- X
- X+ #ifdef TEXTCOLOR
- X+ /* color maps */
- X+ static int foreg[8] = { 2, 3, 1, 3, 3, 3, 3, 0 };
- X+ static int backg[8] = { 1, 2, 2, 0, 1, 1, 1, 1 };
- X+ #endif
- X
- X void
- X startup()
- X {
- X+ #ifdef TEXTCOLOR
- X+ register int c;
- X+ #endif
- X+
- X (void) Initialize(); /* This opens screen, window, console, &c */
- X
- X CO = COLNO;
- X***************
- X*** 37,43 ****
- X
- X CD = "\233J"; /* used in pager.c */
- X
- X! #ifdef MSDOSCOLOR
- X /*
- X * We need 5 different 'colors', but in a 4-color screen we really
- X * cannot make these available, even more so because we use the user's
- X--- 46,52 ----
- X
- X CD = "\233J"; /* used in pager.c */
- X
- X! #ifdef TEXTCOLOR
- X /*
- X * We need 5 different 'colors', but in a 4-color screen we really
- X * cannot make these available, even more so because we use the user's
- X***************
- X*** 44,55 ****
- X * preferred Workbench colors. Instead, we use different combinations
- X * of the 4 possible colors. For orientation: default colors are
- X * white (1) on blue (0), and a orange (3) cursor on a black (2) character.
- X */
- X! HI_GREEN = "\23331;42m"; /* White on Black */
- X! HI_RED = "\23333;42m"; /* Orange on Black */
- X! HI_YELLOW = "\23333;40m"; /* Orange on Blue */
- X! HI_BLUE = "\23333;41m"; /* Orange on White */
- X! HI_WHITE = "\23330;41m"; /* Blue on White */
- X
- X HI = "\2331m"; /* Bold (hilight) */
- X HE = "\2330m"; /* Plain */
- X--- 53,72 ----
- X * preferred Workbench colors. Instead, we use different combinations
- X * of the 4 possible colors. For orientation: default colors are
- X * white (1) on blue (0), and a orange (3) cursor on a black (2) character.
- X+ *
- X+ * "Black": Black on White
- X+ * "Red": Orange on Black
- X+ * "Green": White on Black
- X+ * "Yellow": Orange on Blue
- X+ * "Blue": Orange on White
- X+ * "Magenta": White on Black
- X+ * "Cyan": White on Black
- X+ * "White": Blue on White
- X */
- X! for (c = 0; c < SIZE(HI_COLOR); c++) {
- X! HI_COLOR[c] = (char *) alloc(sizeof("E0;33;44m"));
- X! Sprintf(HI_COLOR[c], "\2333%d;4%dm", foreg[c], backg[c]);
- X! }
- X
- X HI = "\2331m"; /* Bold (hilight) */
- X HE = "\2330m"; /* Plain */
- X*** auxil/Old/Guidebook.mn Wed Aug 16 12:02:09 1989
- X--- auxil/Guidebook.mn Tue Aug 15 22:59:21 1989
- X***************
- X*** 4,10 ****
- X .ds vr "NetHack Version 3.0
- X .ds f0 "\*(vr
- X .ds f1
- X! .ds f2 "July 22, 1989
- X .mt
- X A Guide to the Mazes of Menace
- X .au
- X--- 4,10 ----
- X .ds vr "NetHack Version 3.0
- X .ds f0 "\*(vr
- X .ds f1
- X! .ds f2 "August 13, 1989
- X .mt
- X A Guide to the Mazes of Menace
- X .au
- X***************
- X*** 500,520 ****
- X commands. You may obtain a list of them by entering `?'. What
- X extended commands are available depend on what features the game was
- X compiled with. Most extended commands are used only under limited
- X! circumstances.
- X .pg
- X If the
- X .op number_pad
- X option is on, some additional letter commands are available:
- X .lp j
- X! jump to another location. Same as ``#jump''.
- X .lp k
- X kick something (usually a door). Same as `^D'.
- X .lp l
- X! loot a box on the floor. Same as ``#loot''.
- X .lp N
- X! name an object or type of object. Same as ``#name''.
- X .lp u
- X! untrap a trapped object or door. Same as ``#untrap''.
- X
- X .hn 1
- X Rooms and corridors
- X--- 500,523 ----
- X commands. You may obtain a list of them by entering `?'. What
- X extended commands are available depend on what features the game was
- X compiled with. Most extended commands are used only under limited
- X! circumstances. Note that if your keyboard has a meta key (that is, one which
- X! when pressed in combination with another key modified it by turning on
- X! the 'meta' or 0x80 bit) these extended commands can be invoked by meta-ing the
- X! first letter of the command.
- X .pg
- X If the
- X .op number_pad
- X option is on, some additional letter commands are available:
- X .lp j
- X! jump to another location. Same as ``#jump'' or meta-j.
- X .lp k
- X kick something (usually a door). Same as `^D'.
- X .lp l
- X! loot a box on the floor. Same as ``#loot'' or meta-l.
- X .lp N
- X! name an object or type of object. Same as ``#name'' or meta-n.
- X .lp u
- X! untrap a trapped object or door. Same as ``#untrap'' or meta-u.
- X
- X .hn 1
- X Rooms and corridors
- X***************
- X*** 836,846 ****
- X .pg
- X You may encounter chests or boxes in your travels. These can be
- X opened with the ``#loot'' extended command when they are on the floor,
- X! or with the `a' (apply) command when you are carrying one.
- X! Chests are unwieldy objects, and must be set down to be unlocked
- X! (which can be accomplished by kicking them,
- X! using a key or lock picking tool with the `a' (apply) command, or
- X! by using a weapon to force the lock with the ``#force'' extended command).
- X .pg
- X Some chests are trapped, causing nasty things to happen when you
- X unlock or open them. You can check for and try to deactivate traps
- X--- 839,851 ----
- X .pg
- X You may encounter chests or boxes in your travels. These can be
- X opened with the ``#loot'' extended command when they are on the floor,
- X! or with the `a' (apply) command when you are carrying one. However,
- X! chests are often locked, and require you to either use a key to unlock
- X! it, a tool to pick the lock, or to break it open with brute force.
- X! Chests are unwieldy objects, and must be set down to be unlocked (by
- X! kicking them, using a key or lock picking tool with the `a' (apply)
- X! command, or by using a weapon to force the lock with the ``#force''
- X! extended command).
- X .pg
- X Some chests are trapped, causing nasty things to happen when you
- X unlock or open them. You can check for and try to deactivate traps
- X***************
- X*** 969,975 ****
- X set. If it doesn't work, your terminal may not support alternate
- X character sets, or the termcap entry for your terminal doesn't have
- X the appropriate escape sequences. For the record, the sequences to
- X! add to the termcap entry are ``:as=^O:ae=^N:ti=\\E)0:''.
- X
- X The order of the symbols is: solid rock, vertical wall, horizontal
- X wall, upper left corner, upper right corner, lower left corner, lower
- X--- 974,980 ----
- X set. If it doesn't work, your terminal may not support alternate
- X character sets, or the termcap entry for your terminal doesn't have
- X the appropriate escape sequences. For the record, the sequences to
- X! add to the termcap entry are ``:as=^N:ae=^O:ti=\\E)0:''.
- X
- X The order of the symbols is: solid rock, vertical wall, horizontal
- X wall, upper left corner, upper right corner, lower left corner, lower
- X***************
- X*** 1119,1124 ****
- X--- 1124,1131 ----
- X .pg
- X \fBEric R. Smith\fP ported NetHack 3.0 to the Atari.
- X .pg
- X+ \fBTimo Hakulinen\fP ported NetHack 3.0 to OS/2.
- X+ .pg
- X The following folks have made significant contributions to the playability
- X of the game:
- X
- X***************
- X*** 1126,1138 ****
- X .TS S
- X center;
- X c c c.
- X! Tom Almy Eric Hendrickson Izchak Miller
- X! Ken Arromdee Bruce Holloway Gil Neiger
- X! Eric Backus Richard P. Hughey Eric S. Raymond
- X! John S. Bien Greg Laskin John Rupley
- X! Ralf Brown Steve Linhart Kevin Sweet
- X! Jean-Christophe Collet Roland McGrath Scott R. Turner
- X! Steve Creps Bruce Mewborne Janet Walz
- X .TE
- X .ed
- X
- X--- 1133,1146 ----
- X .TS S
- X center;
- X c c c.
- X! Tom Almy Bruce Holloway Izchak Miller
- X! Ken Arromdee Richard P. Hughey Gil Neiger
- X! Eric Backus Del Lamb Eric S. Raymond
- X! John S. Bien Greg Laskin John Rupley
- X! Ralf Brown Steve Linhart Kevin Sweet
- X! Jean-Christophe Collet Benson I. Margulies Scott R. Turner
- X! Steve Creps Roland McGrath Janet Walz
- X! Eric Hendrickson Bruce Mewborne
- X .TE
- X .ed
- X
- X*** auxil/Old/Makefile.auxil Wed Aug 16 12:03:10 1989
- X--- auxil/Makefile.auxil Wed Aug 16 11:39:13 1989
- X***************
- X*** 24,26 ****
- X--- 24,29 ----
- X ../src/lev_comp castle.des
- X ../src/lev_comp endgame.des
- X ../src/lev_comp tower.des
- X+
- X+ spotless:
- X+ -rm -f Guidebook data rumors castle endgame tower1 tower2 tower3
- X*** auxil/Old/help Wed Aug 16 12:04:08 1989
- X--- auxil/help Tue Aug 15 22:59:07 1989
- X***************
- X*** 139,145 ****
- X the commands you can use with "#" type "#?". The extended
- X commands you can use depends upon what options the game was
- X compiled with, along with your class and what type of monster
- X! you most closely resemble at a given moment.
- X
- X If the "number_pad" option is on, some additional letter commands
- X are available:
- X--- 139,149 ----
- X the commands you can use with "#" type "#?". The extended
- X commands you can use depends upon what options the game was
- X compiled with, along with your class and what type of monster
- X! you most closely resemble at a given moment. If your keyboard
- X! has a meta key (that is, one which when pressed in combination
- X! with another key modified it by turning on the 'meta' or 0x80
- X! bit) these extended commands can be invoked by meta-ing the
- X! first letter of the command.
- X
- X If the "number_pad" option is on, some additional letter commands
- X are available:
- X*** auxil/Old/hh Wed Aug 16 12:04:20 1989
- X--- auxil/hh Tue Aug 15 22:59:11 1989
- X***************
- X*** 27,33 ****
- X
- X Game commands:
- X ^T 'port teleport (if you can)
- X! ^D kick kick a door
- X a apply apply or use a tool (pick-axe, key, camera, etc.)
- X A remove take off all armor
- X c close close a door
- X--- 27,33 ----
- X
- X Game commands:
- X ^T 'port teleport (if you can)
- X! ^D kick kick (a door, or something else)
- X a apply apply or use a tool (pick-axe, key, camera, etc.)
- X A remove take off all armor
- X c close close a door
- X***************
- X*** 73,75 ****
- X--- 73,78 ----
- X l loot loot a box on the floor
- X N name name an object or type of object
- X u untrap untrap a trapped object
- X+
- X+ If your keyboard has a meta key, 'jump' 'loot', 'name' and 'untrap' are
- X+ available as M-j, M-l, M-N or M-u respectively.
- X*** auxil/Old/history Wed Aug 16 12:04:32 1989
- X--- auxil/history Wed Aug 16 10:15:34 1989
- X***************
- X*** 20,32 ****
- X coordinated a cast of thousands in enhancing and debugging NetHack 1.4 and
- X released NetHack versions 2.2 and 2.3. Later, he coordinated a major rewrite
- X of the game, heading a team which included Ken Arromdee, Jean-Christophe
- X! Collet, Steve Creps, Eric Hendrickson, Izchak Miller, John Rupley, Mike
- X! Threepoint, and Janet Walz, to produce NetHack 3.0.
- X
- X Olaf Seibert ported NetHack 2.3 and 3.0 to the Amiga.
- X
- X Eric R. Smith ported NetHack 3.0 to the Atari.
- X
- X
- X From time to time, some depraved individual out there in netland sends a
- X particularly intriguing modification to help out with the game. The Gods of
- X--- 20,34 ----
- X coordinated a cast of thousands in enhancing and debugging NetHack 1.4 and
- X released NetHack versions 2.2 and 2.3. Later, he coordinated a major rewrite
- X of the game, heading a team which included Ken Arromdee, Jean-Christophe
- X! Collet, Steve Creps, Eric Hendrickson, Izchak Miller, Eric S. Raymond, John
- X! Rupley, Mike Threepoint, and Janet Walz, to produce NetHack 3.0.
- X
- X Olaf Seibert ported NetHack 2.3 and 3.0 to the Amiga.
- X
- X Eric R. Smith ported NetHack 3.0 to the Atari.
- X
- X+ Timo Hakulinen ported NetHack 3.0 to OS/2.
- X+
- X
- X From time to time, some depraved individual out there in netland sends a
- X particularly intriguing modification to help out with the game. The Gods of
- X***************
- X*** 33,44 ****
- X the Dungeon sometimes make note of the names of the worst of these miscreants
- X in this, the list of Dungeoneers:
- X
- X! Tom Almy Eric Hendrickson Izchak Miller
- X! Ken Arromdee Bruce Holloway Gil Neiger
- X! Eric Backus Richard P. Hughey Eric S. Raymond
- X John S. Bien Greg Laskin John Rupley
- X Ralf Brown Steve Linhart Kevin Sweet
- X! Jean-Christophe Collet Roland McGrath Scott R. Turner
- X! Steve Creps Bruce Mewborne Janet Walz
- X! and... The Unknown Hacker
- X!
- X--- 35,45 ----
- X the Dungeon sometimes make note of the names of the worst of these miscreants
- X in this, the list of Dungeoneers:
- X
- X! Tom Almy Bruce Holloway Izchak Miller
- X! Ken Arromdee Richard P. Hughey Gil Neiger
- X! Eric Backus Del Lamb Eric S. Raymond
- X John S. Bien Greg Laskin John Rupley
- X Ralf Brown Steve Linhart Kevin Sweet
- X! Jean-Christophe Collet Benson I. Margulies Scott R. Turner
- X! Steve Creps Roland McGrath Janet Walz
- X! Eric Hendrickson Bruce Mewborne
- X*** auxil/Old/lev_comp.6 Wed Aug 16 12:04:49 1989
- X--- auxil/lev_comp.6 Tue Aug 8 20:19:18 1989
- X***************
- X*** 1,4 ****
- X! .TH LEV_COMP 6 "5 JULY 1989"
- X .UC 4
- X .SH NAME
- X lev_comp \- NetHack special levels compiler
- X--- 1,4 ----
- X! .TH LEV_COMP 6 "5 July 1989"
- X .UC 4
- X .SH NAME
- X lev_comp \- NetHack special levels compiler
- X***************
- X*** 7,27 ****
- X [
- X .I files
- X ]
- X .SH DESCRIPTION
- X .PP
- X .I Lev_comp
- X! is a special level compiler for NetHack version 3.0 and higher.
- X! It takes description files as arguments and produces level files that can be
- X! loaded by NetHack at runtime.
- X! If no arguments are given, it reads standard input.
- X .PP
- X! The purpose of this tool is to provide NetHack administrators and implementors
- X! with a convenient way for adding special levels to the game,
- X! or modifying existing ones,
- X! without having to recompile the entire world.
- X! At this time, the special levels code is not fully implemented,
- X! as the decision to load the special levels is hard-coded in the game.
- X! In a future release, it is expected to be a run-time decision.
- X .SH GRAMMAR
- X .PP
- X .LP
- X--- 7,28 ----
- X [
- X .I files
- X ]
- X+ .PP
- X+ If no arguments are given, it reads standard input.
- X .SH DESCRIPTION
- X .PP
- X .I Lev_comp
- X! is a special level compiler for NetHack version 3.0 and higher. It
- X! takes description files as arguments and produces level files that can
- X! be loaded by NetHack at runtime.
- X .PP
- X! The purpose of this tool is to provide NetHack administrators and
- X! implementors with a convenient way for adding special levels to the
- X! game, or modifying existing ones, without having to recompile the
- X! entire world. At this time, the special levels code is not fully
- X! implemented, as the decision to load the special levels is hard-coded
- X! in the game. In a future release, it is expected to be a run-time
- X! decision.
- X .SH GRAMMAR
- X .PP
- X .LP
- X***************
- X*** 183,211 ****
- X MAZE : "fortress"
- X GEOMETRY : center , center
- X MAP
- X! }}}}}}}}}}}}}
- X! }}}|-----|}}}
- X! }}}|.....|}}}
- X! }|--.....--|}
- X! }|.........|}
- X! }|--.....--|}
- X! }}}|.....|}}}
- X! }}}|-----|}}}
- X! }}}}}}}}}}}}}
- X ENDMAP
- X! MONSTER: '@',"wizard of yendor", (6,4)
- X # a random dragon somewhere
- X MONSTER: 'D', random, random
- X! # a random trap in the EAST part
- X! TRAP: random, (10,4)
- X .fi
- X .PP
- X This example will produce a file named "fortress" that can be integrated into
- X! one of the numerous mazes of the game...
- X
- X .SH AUTHOR
- X .PP
- X! Jean-christophe Collet.
- X .SH BUGS
- X .PP
- X Probably infinite.
- X--- 184,222 ----
- X MAZE : "fortress"
- X GEOMETRY : center , center
- X MAP
- X! }}}}}}}}}
- X! }}}|-|}}}
- X! }}|-.-|}}
- X! }|-...-|}
- X! }|.....|}
- X! }|-...-|}
- X! }}|-.-|}}
- X! }}}|-|}}}
- X! }}}}}}}}}
- X ENDMAP
- X! MONSTER: '@', "Wizard of Yendor", (4,4)
- X! OBJECT: '"', "Amulet of Yendor", (4,4)
- X! # a hell hound flanking the Wiz on a random side
- X! RANDOM_PLACES: (4,3), (4,5), (3,4), (5,4)
- X! MONSTER: 'd', "hell hound", place[0]
- X! # a chest on another random side
- X! OBJECT: '(', "chest", place[1]
- X # a random dragon somewhere
- X MONSTER: 'D', random, random
- X! # a random trap in the EAST end
- X! TRAP: random, (6,4)
- X! # an electric eel below the SOUTH end
- X! MONSTER: ';', "electric eel", (4,8)
- X! # make the walls non-diggable
- X! NON_DIGGABLE: (0,0,8,8)
- X .fi
- X .PP
- X This example will produce a file named "fortress" that can be integrated into
- X! one of the numerous mazes of the game.
- X
- X .SH AUTHOR
- X .PP
- X! Jean-Christophe Collet.
- X .SH BUGS
- X .PP
- X Probably infinite.
- X*** auxil/Old/nethack.sh Wed Aug 16 12:05:31 1989
- X--- auxil/nethack.sh Fri Aug 11 14:43:01 1989
- X***************
- X*** 1,8 ****
- X #!/bin/sh
- X! # SCCS Id: @(#)nethack.sh 1.4 87/08/08
- X HACKDIR=/usr/games/lib/nethackdir
- X HACK=$HACKDIR/nethack
- X MAXNROFPLAYERS=4
- X
- X cd $HACKDIR
- X case $1 in
- X--- 1,35 ----
- X #!/bin/sh
- X! # SCCS Id: @(#)nethack.sh 3.0 89/08/11
- X!
- X HACKDIR=/usr/games/lib/nethackdir
- X HACK=$HACKDIR/nethack
- X MAXNROFPLAYERS=4
- X+
- X+ # see if we can find the full path name of PAGER, so help files work properly
- X+ # ideas from brian@radio.astro.utoronto.ca
- X+ if test $PAGER
- X+ then
- X+ if test ! -x $PAGER
- X+ then
- X+ IFS=:
- X+ for i in $PATH
- X+ do
- X+ if test -x $i/$PAGER
- X+ then
- X+ PAGER=$i/$PAGER
- X+ export PAGER
- X+ break
- X+ fi
- X+ done
- X+ IFS=' '
- X+ fi
- X+ if test ! -x $PAGER
- X+ then
- X+ echo Cannot find $PAGER -- unsetting PAGER.
- X+ unset PAGER
- X+ fi
- X+ fi
- X+
- X
- X cd $HACKDIR
- X case $1 in
- X*** auxil/Old/oracles Wed Aug 16 12:05:51 1989
- X--- auxil/oracles Wed Aug 16 10:19:56 1989
- X***************
- X*** 1,10 ****
- X! If thy wand hath run out of charges, thou mayest zap it again and again; though
- X! nothing will happen at first, thy persistence shall surely be rewarded, as
- X! one last charge shall be wrested from it!
- X -----
- X! To complete thy quest, thou needest enter the infernal regions. If thou hast
- X! not immunity to fire, such a trip will surely prove to be thy last; prepare
- X! thyself in advance.
- X -----
- X Though the shopkeepers be wary, thieves have nevertheless stolen much by using
- X their digging wands to hasten exits through the pavement.
- X--- 1,10 ----
- X! If thy wand hath run out of charges, thou mayst zap it again and again; though
- X! naught will happen at first, verily, thy persistence shall be rewarded, as
- X! one last charge may yet be wrested from it!
- X -----
- X! To complete thy quest, thou needs must enter the infernal regions. If thou
- X! hast not immunity to fire, such a trip will surely prove to be thy last;
- X! prepare thyself in advance.
- X -----
- X Though the shopkeepers be wary, thieves have nevertheless stolen much by using
- X their digging wands to hasten exits through the pavement.
- X***************
- X*** 13,21 ****
- X that thou canst prevent this by, while in a confused state, reading the magical
- X parchments which normally are used to cause their enchantment.
- X -----
- X! Behold the cockatrice, a mighty creature which can petrify anything normal it
- X! comes across--save the wise adventurer who eats a dead lizard or blob of acid
- X! when he feels himself slowly turning to stone.
- X -----
- X While some armor protects against magical attacks, few types compare to the
- X items which come from the elven regions, though iron or crystalline plate
- X--- 13,22 ----
- X that thou canst prevent this by, while in a confused state, reading the magical
- X parchments which normally are used to cause their enchantment.
- X -----
- X! Behold the cockatrice, whose diminutive stature belies its hidden might. The
- X! cockatrice can petrify any ordinary being it contacts--save those wise
- X! adventurers who eat a dead lizard or blob of acid when they feel themselves
- X! slowly turning to stone.
- X -----
- X While some armor protects against magical attacks, few types compare to the
- X items which come from the elven regions, though iron or crystalline plate
- X***************
- X*** 33,43 ****
- X around on the level. Daring adventurers have also performed the same feat
- X sans need for scrolls or potions by stepping on the correct type of trap.
- X -----
- X! Most all adventurers who come this way hope to pass the medusa. To do this,
- X! the best advice is to keep thine eyes blindfolded and to cause the creature
- X! to espy its own reflection in a mirror.
- X -----
- X! And when it is written, "ad aerarium," diligent searching will often reveal
- X the way to a trap which sends one to the Magic Memory Vault, where the riches
- X of Croesus are stored; however, escaping from the vault with its gold is much
- X harder than getting in.
- X--- 34,44 ----
- X around on the level. Daring adventurers have also performed the same feat
- X sans need for scrolls or potions by stepping on the correct type of trap.
- X -----
- X! Almost all adventurers who come this way hope to pass the dread Medusa. To
- X! do this, the best advice is to keep thine eyes blindfolded and to cause the
- X! creature to espy its own reflection in a mirror.
- X -----
- X! And where it is written "ad aerarium", diligent searching will often reveal
- X the way to a trap which sends one to the Magic Memory Vault, where the riches
- X of Croesus are stored; however, escaping from the vault with its gold is much
- X harder than getting in.
- X***************
- X*** 44,61 ****
- X -----
- X It is well known that wily shopkeepers doth raise their prices whene'er they
- X espy the garish apparel of the approaching tourist or the countenance of a
- X! disfavored patron. Prices favor the gentle of manner and the fair of face.
- X! The boor mayst expect unprofitable transactions.
- X -----
- X The cliche of the kitchen sink swallowing any unfortunate rings that contact
- X! its pernicious surface doth reflect greater truth as many homilies, yet
- X even so, few hath developed the skill to identify enchanted rings by the
- X transfigurations effected upon the voracious device's frame.
- X -----
- X The meat of enchanted creatures will ofttimes convey magical properties
- X unto the consumer. A fresh corpse of floating eye doth fetch a high
- X! price among wizards for its utility for to develop Telepathy, by which
- X! the sightless mayst locate surrounding minds.
- X -----
- X The detection of blessings and curses is in the domain of the gods. They will
- X make this information available to mortals who request it at their places of
- X--- 45,62 ----
- X -----
- X It is well known that wily shopkeepers doth raise their prices whene'er they
- X espy the garish apparel of the approaching tourist or the countenance of a
- X! disfavored patron. They favor the gentle of manner and the fair of face.
- X! The boor may expect unprofitable transactions.
- X -----
- X The cliche of the kitchen sink swallowing any unfortunate rings that contact
- X! its pernicious surface reflecteth greater truth than many homilies, yet
- X even so, few hath developed the skill to identify enchanted rings by the
- X transfigurations effected upon the voracious device's frame.
- X -----
- X The meat of enchanted creatures will ofttimes convey magical properties
- X unto the consumer. A fresh corpse of floating eye doth fetch a high
- X! price among wizards for its utility in conferring Telepathy, by which
- X! the sightless may locate surrounding minds.
- X -----
- X The detection of blessings and curses is in the domain of the gods. They will
- X make this information available to mortals who request it at their places of
- X*** auxil/Old/rumors.fal Wed Aug 16 12:06:04 1989
- X--- auxil/rumors.fal Fri Aug 4 18:36:27 1989
- X***************
- X*** 54,60 ****
- X Engrave your wishes with a wand of wishing.
- X Eventually you will come to admire the swift elegance of a retreating nymph.
- X Ever heard hissing outside? I *knew* you hadn't!
- X! Ever lifted a dead dragon?
- X Ever seen your weapon glow plaid?
- X Ever seen a leocrotta dancing the tengu?
- X Ever tamed a shopkeeper?
- X--- 54,60 ----
- X Engrave your wishes with a wand of wishing.
- X Eventually you will come to admire the swift elegance of a retreating nymph.
- X Ever heard hissing outside? I *knew* you hadn't!
- X! Ever lifted a dragon corpse?
- X Ever seen your weapon glow plaid?
- X Ever seen a leocrotta dancing the tengu?
- X Ever tamed a shopkeeper?
- X***************
- X*** 108,113 ****
- X--- 108,114 ----
- X Never play leapfrog with a unicorn.
- X Never step on a cursed engraving.
- X Never swim with a camera: there's nothing to take pictures of.
- X+ Never teach your pet rust monster to fetch.
- X Never trust a random generator in magic fields.
- X Never use a wand of death.
- X No level contains two shops. The maze is no level. So...
- X*** include/Old/amiconf.h Wed Aug 16 14:03:39 1989
- X--- include/amiconf.h Fri Aug 11 17:13:35 1989
- X***************
- X*** 27,33 ****
- X * Configurable Amiga options:
- X */
- X
- X! #define MSDOSCOLOR /* Use colored monsters and objects */
- X #define HACKFONT /* Use special hack.font */
- X #define SHELL /* Have a shell escape command (!) */
- X #define MAIL /* Get mail at unexpected occasions */
- X--- 27,33 ----
- X * Configurable Amiga options:
- X */
- X
- X! #define TEXTCOLOR /* Use colored monsters and objects */
- X #define HACKFONT /* Use special hack.font */
- X #define SHELL /* Have a shell escape command (!) */
- X #define MAIL /* Get mail at unexpected occasions */
- X*** include/Old/config.h Wed Aug 16 14:04:12 1989
- X--- include/config.h Tue Aug 15 21:58:18 1989
- X***************
- X*** 14,24 ****
- X
- X #define UNIX /* delete if no fork(), exec() available */
- X
- X! #ifdef __MSDOS__ /* Turbo C auto-defines __MSDOS__, others MSDOS */
- X! #define MSDOS /* define for MS-DOS (actually defined by compiler) */
- X #else
- X! /* # define MSDOS /* define for MS-DOS and most other micros */
- X! /* # define AMIGA /* define for Commodore-Amiga */
- X /* #define TOS /* for Atari 520/1040 */
- X
- X /* #define STUPID /* avoid some complicated expressions if
- X--- 14,24 ----
- X
- X #define UNIX /* delete if no fork(), exec() available */
- X
- X! #ifdef __MSDOS__ /* Turbo C auto-defines __MSDOS__, MSC defines MSDOS */
- X! #define MSDOS /* define for MS-DOS (in case compiler doesn't) */
- X #else
- X! /* #define MSDOS /* define for MS-DOS and most other micros */
- X! /* #define AMIGA /* define for Commodore-Amiga */
- X /* #define TOS /* for Atari 520/1040 */
- X
- X /* #define STUPID /* avoid some complicated expressions if
- X*** include/Old/decl.h Wed Aug 16 14:04:38 1989
- X--- include/decl.h Tue Aug 15 21:58:26 1989
- X***************
- X*** 120,127 ****
- X E int in_doagain;
- X #endif
- X
- X! #ifdef MSDOSCOLOR
- X! E char *HI_RED, *HI_YELLOW, *HI_GREEN, *HI_BLUE, *HI_WHITE; /* termcap.c */
- X #endif
- X
- X #ifndef OBJ_H
- X--- 120,134 ----
- X E int in_doagain;
- X #endif
- X
- X! #ifdef TEXTCOLOR
- X! #define RED 1
- X! #define GREEN 2
- X! #define YELLOW 3
- X! #define BLUE 4
- X! #define MAGENTA 5
- X! #define CYAN 6
- X! #define WHITE 7
- X! E char *HI_COLOR[8]; /* termcap.c */
- X #endif
- X
- X #ifndef OBJ_H
- X*** include/Old/extern.h Wed Aug 16 14:05:24 1989
- X--- include/extern.h Wed Aug 16 10:16:11 1989
- X***************
- X*** 76,81 ****
- X--- 76,82 ----
- X
- X /* ### cmd.c ### */
- X
- X+ E void reset_occupations ();
- X E void set_occupation P((int(*)(),char *,int));
- X #ifdef REDO
- X E char pgetchar();
- X***************
- X*** 189,195 ****
- X--- 190,198 ----
- X E void glibr();
- X E struct obj *some_armor();
- X E void corrode_armor();
- X+ E void reset_remarm();
- X E int doddoremarm();
- X+ E int destroy_arm P((struct obj *));
- X E void adj_abon P((struct obj *,schar));
- X
- X /* ### dog.c ### */
- X***************
- X*** 240,246 ****
- X E int done2();
- X E void done_in_by P((struct monst *));
- X E void panic P((char *,...));
- X! E void done P((char *));
- X E void clearlocks();
- X #ifdef NOSAVEONHANGUP
- X E void hangup();
- X--- 243,249 ----
- X E int done2();
- X E void done_in_by P((struct monst *));
- X E void panic P((char *,...));
- X! E void done P((int));
- X E void clearlocks();
- X #ifdef NOSAVEONHANGUP
- X E void hangup();
- X***************
- X*** 322,329 ****
- X E int weight_cap();
- X E int inv_weight();
- X E int inv_cnt();
- X! E int little_to_big P((int));
- X! E int big_to_little P((int));
- X #ifdef STUPID_CPP /* otherwise these functions are macros in hack.h */
- X E char yn();
- X E char ynq();
- X--- 325,331 ----
- X E int weight_cap();
- X E int inv_weight();
- X E int inv_cnt();
- X! E int identify P((struct obj *));
- X #ifdef STUPID_CPP /* otherwise these functions are macros in hack.h */
- X E char yn();
- X E char ynq();
- X***************
- X*** 380,385 ****
- X--- 382,388 ----
- X
- X /* ### lock.c ### */
- X
- X+ E void reset_pick();
- X E int pick_lock P((struct obj *));
- X E int doforce();
- X E int boxlock P((struct obj *,struct obj *));
- X***************
- X*** 434,448 ****
- X /* ### mhitu.c ### */
- X
- X #ifdef POLYSELF
- X- E boolean incompatible P((struct monst *));
- X E struct monst *cloneu();
- X #endif
- X- E boolean is_nymph P((struct monst *));
- X- E boolean sp_melee P((struct monst *));
- X E int mattacku P((struct monst *));
- X E void mdamageu P((struct monst *,int));
- X #ifdef SEDUCE
- X! E void doseduce P((struct monst *));
- X #endif
- X
- X /* ### mklev.c ### */
- X--- 437,449 ----
- X /* ### mhitu.c ### */
- X
- X #ifdef POLYSELF
- X E struct monst *cloneu();
- X #endif
- X E int mattacku P((struct monst *));
- X E void mdamageu P((struct monst *,int));
- X+ E int could_seduce P((struct monst *,struct monst *,struct attack *));
- X #ifdef SEDUCE
- X! E int doseduce P((struct monst *));
- X #endif
- X
- X /* ### mklev.c ### */
- X***************
- X*** 564,572 ****
- X--- 565,576 ----
- X E int gender P((struct monst *));
- X E boolean levl_follower P((struct monst *));
- X E struct permonst *player_mon();
- X+ E int little_to_big P((int));
- X+ E int big_to_little P((int));
- X
- X /* ### monmove.c ### */
- X
- X+ E boolean mb_trapped P((struct monst *));
- X E int dochugw P((struct monst *));
- X E boolean onscary P((int,int,struct monst *));
- X E int dochug P((struct monst *));
- X***************
- X*** 582,587 ****
- X--- 586,592 ----
- X E void flushout();
- X E int tgetch();
- X E int dosh();
- X+ # ifdef DGK
- X E long freediskspace P((char *));
- X E long filesize P((char *));
- X E void eraseall P((char *,char *));
- X***************
- X*** 589,594 ****
- X--- 594,600 ----
- X E void playwoRAMdisk();
- X E int saveDiskPrompt P((int));
- X E void gameDiskPrompt();
- X+ # endif
- X E void read_config_file();
- X E void set_lock_and_bones();
- X E void append_slash P((char *));
- X***************
- X*** 595,605 ****
- X--- 601,622 ----
- X E void getreturn P((char *));
- X E void msmsg P((char *,...));
- X E void chdrive P((char *));
- X+ # ifndef TOS
- X E void disable_ctrlP();
- X E void enable_ctrlP();
- X+ # endif
- X+ # ifdef DGK
- X E FILE *fopenp P((char *,char *));
- X+ # endif
- X E void msexit P((int));
- X+ # ifdef DGK
- X+ E void get_scr_size();
- X+ # endif
- X #endif /* MSDOS */
- X+ #ifdef TOS
- X+ E int _copyfile P((int, int));
- X+ E int kbhit();
- X+ #endif /* TOS */
- X
- X /* ### mthrowu.c ### */
- X
- X***************
- X*** 681,687 ****
- X E void askname();
- X E void impossible P((char *,...));
- X #ifdef CHDIR
- X! E void chdirx P((char *,char));
- X #endif /* CHDIR */
- X E void stop_occupation();
- X #endif /* MSDOS */
- X--- 698,704 ----
- X E void askname();
- X E void impossible P((char *,...));
- X #ifdef CHDIR
- X! E void chdirx P((char *,boolean));
- X #endif /* CHDIR */
- X E void stop_occupation();
- X #endif /* MSDOS */
- X***************
- X*** 845,856 ****
- X
- X E int doread();
- X E int seffects P((struct obj *));
- X- E int identify P((struct obj *));
- X E void litroom P((boolean));
- X E void do_genocide P((int));
- X E void do_mapping();
- X E void do_vicinity_map();
- X- E int destroy_arm P((struct obj *));
- X E int gold_detect P((struct obj *));
- X E int food_detect P((struct obj *));
- X E void punish P((struct obj *));
- X--- 862,871 ----
- X***************
- X*** 1043,1048 ****
- X--- 1058,1064 ----
- X E void cmore P((char *));
- X E void clrlin();
- X E void pline P((const char *,...));
- X+ E void Norep P((const char *,...));
- X E void You P((const char *,...));
- X E void Your P((const char *,...));
- X E void putsym P((char));
- X***************
- X*** 1099,1107 ****
- X
- X E struct monst *clone_mon P((struct monst *));
- X E boolean special_case P((struct monst *));
- X E boolean attack P((struct monst *));
- X E boolean hmon P((struct monst *,struct obj *,int));
- X! E int passive P((struct monst *,boolean,int));
- X
- X /* ### unixmain.c ### */
- X
- X--- 1115,1127 ----
- X
- X E struct monst *clone_mon P((struct monst *));
- X E boolean special_case P((struct monst *));
- X+ E schar find_roll_to_hit P((struct monst *));
- X E boolean attack P((struct monst *));
- X E boolean hmon P((struct monst *,struct obj *,int));
- X! E int damageum P((struct monst *, struct attack *));
- X! E void missum P((struct monst *, struct attack *));
- X! E int passive P((struct monst *,boolean,int,boolean));
- X! E void stumble_onto_mimic P((struct monst *));
- X
- X /* ### unixmain.c ### */
- X
- X*** include/Old/global.h Wed Aug 16 14:06:34 1989
- X--- include/global.h Tue Aug 15 21:58:18 1989
- X***************
- X*** 9,15 ****
- X
- X
- X /* #define BETA /* if a beta-test copy [MRS] */
- X! #define VERSION "3.0e" /* version number. */
- X
- X /*
- X * Files expected to exist in the playground directory.
- X--- 9,15 ----
- X
- X
- X /* #define BETA /* if a beta-test copy [MRS] */
- X! #define VERSION "3.0f" /* version number. */
- X
- X /*
- X * Files expected to exist in the playground directory.
- X*** include/Old/hack.h Wed Aug 16 14:06:59 1989
- X--- include/hack.h Tue Aug 15 21:58:27 1989
- X***************
- X*** 26,31 ****
- X--- 26,50 ----
- X #define NULL ((genericptr_t)0)
- X #define DUMMY { 0 }
- X
- X+ /* this is the way the game ends */
- X+ /* if these are rearranged, the arrays in end.c will need to be changed */
- X+ #define DIED 0
- X+ #define CHOKING 1
- X+ #define POISONING 2
- X+ #define STARVING 3
- X+ #define DROWNING 4
- X+ #define BURNING 5
- X+ #define CRUSHING 6
- X+ #define STONING 7
- X+ #define GENOCIDED 8
- X+ #define PANICKED 9
- X+ #define TRICKED 10
- X+ #define QUIT 11
- X+ #define ESCAPED 12
- X+ #ifdef ENDGAME
- X+ #define ASCENDED 13
- X+ #endif
- X+
- X #ifndef DECL_H
- X #include "decl.h"
- X #endif
- X*** include/Old/mondata.h Wed Aug 16 14:08:14 1989
- X--- include/mondata.h Wed Aug 9 20:31:42 1989
- X***************
- X*** 77,84 ****
- X #define can_breathe(ptr) attacktype(ptr, AT_BREA)
- X #define cantwield(ptr) (nohands(ptr) || verysmall(ptr))
- X #define cantweararm(ptr) (breakarm(ptr) || sliparm(ptr))
- X- #define nolimbs(ptr) (((ptr)->mflags2 & M2_NOLIMBS) != 0L)
- X #endif /* POLYSELF */
- X #define carnivorous(ptr) (((ptr)->mflags2 & M2_CARNIVORE) != 0L)
- X #define herbivorous(ptr) (((ptr)->mflags2 & M2_HERBIVORE) != 0L)
- X #define thick_skinned(ptr) (((ptr)->mflags2 & M2_THICK_HIDE) != 0L)
- X--- 77,84 ----
- X #define can_breathe(ptr) attacktype(ptr, AT_BREA)
- X #define cantwield(ptr) (nohands(ptr) || verysmall(ptr))
- X #define cantweararm(ptr) (breakarm(ptr) || sliparm(ptr))
- X #endif /* POLYSELF */
- X+ #define nolimbs(ptr) (((ptr)->mflags2 & M2_NOLIMBS) != 0L)
- X #define carnivorous(ptr) (((ptr)->mflags2 & M2_CARNIVORE) != 0L)
- X #define herbivorous(ptr) (((ptr)->mflags2 & M2_HERBIVORE) != 0L)
- X #define thick_skinned(ptr) (((ptr)->mflags2 & M2_THICK_HIDE) != 0L)
- X*** include/Old/pcconf.h Wed Aug 16 14:09:50 1989
- X--- include/pcconf.h Tue Aug 15 21:57:19 1989
- X***************
- X*** 6,11 ****
- X--- 6,15 ----
- X #ifndef PCCONF_H
- X #define PCCONF_H
- X
- X+ /* #define OS2 /* define for OS/2 (Timo Hakulinen) */
- X+ /* #define OS2_CODEVIEW /* define for OS/2 CodeView debugger,
- X+ otherwise path searches may fail (TH) */
- X+
- X /*
- X * The following options are configurable:
- X */
- X***************
- X*** 86,97 ****
- X #endif
- X
- X #ifndef TOS
- X! # define MSDOSCOLOR /* */
- X /* configurable colors */
- X! # define HI_MON HI_RED /* red slaps! */
- X! # define HI_OBJ HI_GREEN
- X! # define HI_GOLD HI_YELLOW
- X! # define HI_ZAP HI_BLUE /* blue zaps! */
- X #endif
- X
- X #ifndef EXTERN_H
- X--- 90,106 ----
- X #endif
- X
- X #ifndef TOS
- X! # define TEXTCOLOR /* */
- X! #endif
- X!
- X! #ifdef TEXTCOLOR
- X /* configurable colors */
- X! # define HI_MON RED /* red slaps! */
- X! # define HI_OBJ MAGENTA
- X! # define HI_METAL CYAN
- X! # define HI_ORGANIC GREEN
- X! # define HI_GOLD YELLOW
- X! # define HI_ZAP BLUE /* blue zaps! */
- X #endif
- X
- X #ifndef EXTERN_H
- X*** include/Old/rm.h Wed Aug 16 14:10:22 1989
- X--- include/rm.h Tue Aug 15 20:32:25 1989
- X***************
- X*** 122,128 ****
- X
- X #define ERRCHAR ']'
- X
- X! #define MAXPCHARS 28 /* maximum number of mapped characters */
- X
- X /*
- X * The 5 possible states of doors
- X--- 122,128 ----
- X
- X #define ERRCHAR ']'
- X
- X! #define MAXPCHARS 32 /* maximum number of mapped characters */
- X
- X /*
- X * The 5 possible states of doors
- X***************
- X*** 185,194 ****
- X * at() display character types, in order of precedence.
- X */
- X #define AT_APP (uchar)0
- X! /* specific overrides */
- X! #define AT_RED (uchar)1 /* flame */
- X! #define AT_BLUE (uchar)4 /* water */
- X! #define AT_WHITE (uchar)7 /* lightning */
- X /* non-specific */
- X #define AT_ZAP (uchar)8
- X #define AT_MON (uchar)9
- X--- 185,191 ----
- X * at() display character types, in order of precedence.
- X */
- X #define AT_APP (uchar)0
- X! /* 1-7 are specific overrides, see decl.h */
- X /* non-specific */
- X #define AT_ZAP (uchar)8
- X #define AT_MON (uchar)9
- X*** include/Old/unixconf.h Wed Aug 16 14:12:01 1989
- X--- include/unixconf.h Fri Aug 11 17:10:55 1989
- X***************
- X*** 42,48 ****
- X--- 42,50 ----
- X run with Microport Sys V/AT version 2.4.
- X By Jay Maynard */
- X
- X+ /* #define TEXTCOLOR /* Use System V r3.2 terminfo color support */
- X
- X+
- X /*
- X * The next two defines are intended mainly for the Andrew File System,
- X * which does not allow hard links. If NO_FILE_LINKS is defined, lock files
- X***************
- X*** 70,79 ****
- X * variable MAILREADER; otherwise an internal pager will be used.
- X * A stat system call is done on the mailbox every MAILCKFREQ moves.
- X */
- X
- X! #define MAIL
- X! #define DEF_MAILREADER "/usr/ucb/Mail" /* or e.g. /bin/mail */
- X! #define MAILCKFREQ 50
- X
- X #ifdef COMPRESS
- X /* Some implementations of compress need a 'quiet' option.
- X--- 72,89 ----
- X * variable MAILREADER; otherwise an internal pager will be used.
- X * A stat system call is done on the mailbox every MAILCKFREQ moves.
- X */
- X
- X! #define MAIL
- X! #if defined(BSD) || defined(ULTRIX)
- X! #define DEF_MAILREADER "/usr/ucb/Mail"
- X! #else
- X! # ifdef SYSV
- X! #define DEF_MAILREADER "/usr/bin/mailx"
- X! # else
- X! #define DEF_MAILREADER "/bin/mail"
- X! # endif
- X! #endif
- X! #define MAILCKFREQ 50
- X
- X #ifdef COMPRESS
- X /* Some implementations of compress need a 'quiet' option.
- X***************
- X*** 133,144 ****
- X #ifdef hc /* older versions of the MetaWare High-C compiler define this */
- X # ifdef __HC__
- X # undef __HC__
- X! # endif __HC__
- X # define __HC__ hc
- X # undef hc
- X! #endif hc
- X
- X #include "extern.h"
- X
- X #endif /* UNIXCONF_H /* */
- X #endif /* UNIX /* */
- X--- 141,164 ----
- X #ifdef hc /* older versions of the MetaWare High-C compiler define this */
- X # ifdef __HC__
- X # undef __HC__
- X! # endif
- X # define __HC__ hc
- X # undef hc
- X! #endif
- X!
- X! #ifdef TEXTCOLOR
- X! /* configurable colors */
- X! # define HI_MON RED /* red slaps! */
- X! # define HI_OBJ MAGENTA
- X! # define HI_METAL CYAN
- X! # define HI_ORGANIC GREEN
- X! # define HI_GOLD YELLOW
- X! # define HI_ZAP BLUE /* blue zaps! */
- X! #endif
- X
- X+ #ifndef EXTERN_H
- X #include "extern.h"
- X+ #endif
- X
- X #endif /* UNIXCONF_H /* */
- X #endif /* UNIX /* */
- X*** /dev/null Tue Aug 15 10:53:49 1989
- X--- include/def_os2.h Tue Aug 15 20:49:24 1989
- X***************
- X*** 0 ****
- X--- 1,108 ----
- X+ /* SCCS Id: @(#)def_os2.h 3.0 89/08/13
- X+
- X+ /* OS/2 defines based on MSC 5.1 OS/2 include files.
- X+ Only a small portion of all OS/2 defines are needed,
- X+ so the actual include files are not used.
- X+
- X+ Timo Hakulinen
- X+ */
- X+
- X+ #define APIENTRY pascal far
- X+
- X+ #define CHAR char /* ch */
- X+ #define SHORT int /* s */
- X+ #define LONG long /* l */
- X+ #define INT int /* i */
- X+
- X+ typedef unsigned char UCHAR; /* uch */
- X+ typedef unsigned int USHORT; /* us */
- X+ typedef unsigned long ULONG; /* ul */
- X+ typedef unsigned int UINT; /* ui */
- X+
- X+ typedef unsigned char BYTE; /* b */
- X+ typedef BYTE far *PBYTE;
- X+
- X+ typedef unsigned short SHANDLE;
- X+ typedef SHANDLE HKBD;
- X+ typedef SHANDLE HVIO;
- X+ typedef SHANDLE HDIR; /* hdir */
- X+ typedef HDIR far *PHDIR;
- X+
- X+ typedef USHORT far *PUSHORT;
- X+ typedef char far *PSZ;
- X+
- X+ typedef struct {
- X+ UCHAR chChar;
- X+ UCHAR chScan;
- X+ UCHAR fbStatus;
- X+ UCHAR bNlsShift;
- X+ USHORT fsState;
- X+ ULONG time;
- X+ } KBDKEYINFO;
- X+ typedef KBDKEYINFO far *PKBDKEYINFO;
- X+
- X+ /* File time and date types */
- X+
- X+ typedef struct _FTIME { /* ftime */
- X+ unsigned twosecs : 5;
- X+ unsigned minutes : 6;
- X+ unsigned hours : 5;
- X+ } FTIME;
- X+ typedef FTIME far *PFTIME;
- X+
- X+ typedef struct _FDATE { /* fdate */
- X+ unsigned day : 5;
- X+ unsigned month : 4;
- X+ unsigned year : 7;
- X+ } FDATE;
- X+ typedef FDATE far *PFDATE;
- X+
- X+ typedef struct _FILEFINDBUF { /* findbuf */
- X+ FDATE fdateCreation;
- X+ FTIME ftimeCreation;
- X+ FDATE fdateLastAccess;
- X+ FTIME ftimeLastAccess;
- X+ FDATE fdateLastWrite;
- X+ FTIME ftimeLastWrite;
- X+ ULONG cbFile;
- X+ ULONG cbFileAlloc;
- X+ USHORT attrFile;
- X+ UCHAR cchName;
- X+ CHAR achName[13];
- X+ } FILEFINDBUF;
- X+ typedef FILEFINDBUF far *PFILEFINDBUF;
- X+
- X+ /* KBDINFO structure, for KbdSet/GetStatus */
- X+ typedef struct _KBDINFO { /* kbst */
- X+ USHORT cb;
- X+ USHORT fsMask;
- X+ USHORT chTurnAround;
- X+ USHORT fsInterim;
- X+ USHORT fsState;
- X+ } KBDINFO;
- X+ typedef KBDINFO far *PKBDINFO;
- X+
- X+ /* VIOMODEINFO structure, for VioGetMode */
- X+ typedef struct _VIOMODEINFO {
- X+ USHORT cb;
- X+ UCHAR fbType;
- X+ UCHAR color;
- X+ USHORT col;
- X+ USHORT row;
- X+ USHORT hres;
- X+ USHORT vres;
- X+ UCHAR fmt_ID;
- X+ UCHAR attrib;
- X+ } VIOMODEINFO;
- X+ typedef VIOMODEINFO far *PVIOMODEINFO;
- X+
- X+ /* OS2 API functions */
- X+
- X+ USHORT APIENTRY KbdGetStatus(PKBDINFO, HKBD);
- X+ USHORT APIENTRY KbdSetStatus(PKBDINFO, HKBD);
- X+ USHORT APIENTRY KbdCharIn(PKBDKEYINFO, USHORT, HKBD );
- X+ USHORT APIENTRY DosQFSInfo(USHORT, USHORT, PBYTE, USHORT);
- X+ USHORT APIENTRY DosFindFirst(PSZ, PHDIR, USHORT, PFILEFINDBUF, USHORT, PUSHORT, ULONG);
- X+ USHORT APIENTRY DosFindNext(HDIR, PFILEFINDBUF, USHORT, PUSHORT);
- X+ USHORT APIENTRY DosSelectDisk(USHORT);
- X+ USHORT APIENTRY VioGetMode(PVIOMODEINFO, HVIO);
- END_OF_FILE
- if test 47487 -ne `wc -c <'patch02a'`; then
- echo shar: \"'patch02a'\" unpacked with wrong size!
- fi
- # end of 'patch02a'
- fi
- echo shar: End of archive 1 \(of 7\).
- cp /dev/null ark1isdone
- MISSING=""
- for I in 1 2 3 4 5 6 7 ; do
- if test ! -f ark${I}isdone ; then
- MISSING="${MISSING} ${I}"
- fi
- done
- if test "${MISSING}" = "" ; then
- echo You have unpacked all 7 archives.
- rm -f ark[1-9]isdone
- else
- echo You still need to unpack the following archives:
- echo " " ${MISSING}
- fi
- ## End of shell archive.
- exit 0
-